/*
 * @lc app=leetcode.cn id=48 lang=java
 *
 * [48] 旋转图像
 */

// @lc code=start
class Solution {
    public void rotate(int[][] matrix) {
        // 先沿着对角线翻转， 再沿着中线翻转-----翻转90度
        int n = matrix.length;

        for(int i=0; i<n; i++) {
            for(int j=0; j<i; j++) {
                swap(matrix, i, j, j, i);
            }
        }

        for(int i=0; i<n; i++) {
            for(int j=0; j<n/2; j++) {
                swap(matrix, i, j, i, n-j-1);
            }
        }

    }

    private void swap(int[][] matrix, int i, int j, int m, int n) {
        int temp = matrix[i][j];
        matrix[i][j] = matrix[m][n];
        matrix[m][n] = temp;
    }
}
// @lc code=end

